lkml.org 
[lkml]   [2008]   [Oct]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: pktcdvd -> sysfs warning with 2.6.27
From
Date
Kay Sievers <kay.sievers@vrfy.org> writes:

> On Tue, 2008-10-14 at 10:38 +0200, Kay Sievers wrote:
>> On Tue, Oct 14, 2008 at 7:27 AM, Peter Osterlund <petero2@telia.com> wrote:
>> > Greg KH <greg@kroah.com> writes:
>> >
>> >> Both of those should get "real" majors assigned to them. It's not ok to
>> >> randomly go grabbing major:minor numbers like this for code that is in
>> >> mainline.
>> >
>> > It's not about random grabbing. It's about getting a dynamically
>> > assigned number. The pktcdvd driver once had static numbers, but at
>> > the time when the driver was merged into the mainline kernel, dynamic
>> > numbers were considered better. Therefore I changed the driver to use
>> > dynamic numbers.
>>
>> The pktcdvd driver allocates a dynamic block major, which is fine. But
>> doesn't it use the same number, and now not allocated, for the char
>> devices it uses? That looks like something that needs to fixed, right?
>>
>> static void pkt_sysfs_dev_new(struct pktcdvd_device *pd)
>> {
>> if (class_pktcdvd) {
>> pd->dev = device_create_drvdata(class_pktcdvd, NULL,
>> pd->pkt_dev, NULL,
>> "%s", pd->name);
>
> Something similar to this, with error checking, might be needed. It has
> two independent majors now in block and char:
> $ grep pkt /proc/devices
> 251 pktcdvd-char
> 252 pktcdvd

Maybe, but that character device would not be used for anything,
besides creating sub-directories in /sys/class/pktcdvd. The driver
implements a block device, not a character device.

Is it possible to create a custom directory in sysfs corresponding to
a block device? A directory /sys/block/pktcdvd0 is apparently created
automatically, but is it possible to extend that directory with driver
specific data?

--
Peter Osterlund - petero2@telia.com
http://web.telia.com/~u89404340


\
 
 \ /
  Last update: 2008-10-14 23:07    [from the cache]
©2003-2011 Jasper Spaans