[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BANLkTimHMM6gNcFFP62eU-SUfaCPyhWE_A@mail.gmail.com>
Date: Thu, 16 Jun 2011 20:05:03 +0200
From: Kay Sievers <kay.sievers@...y.org>
To: dgilbert@...erlog.com
Cc: James Bottomley <James.Bottomley@...senpartnership.com>,
Greg KH <greg@...ah.com>,
Nao Nishijima <nao.nishijima.xt@...achi.com>,
linux-scsi@...r.kernel.org, linux-kernel@...r.kernel.org,
jcm@...hat.com, hare@...e.de, stefanr@...6.in-berlin.de,
yrl.pp-manager.tt@...achi.com
Subject: Re: [PATCH 1/3] [RFC] genhd: add a new attribute in device structure
On Thu, Jun 16, 2011 at 20:00, Douglas Gilbert <dgilbert@...erlog.com> wrote:
> On 11-06-16 01:20 PM, Kay Sievers wrote:
>> On Thu, Jun 16, 2011 at 19:09, Kay Sievers<kay.sievers@...y.org> wrote:
>>> On Thu, Jun 16, 2011 at 18:25, James Bottomley
>>> <James.Bottomley@...senpartnership.com> wrote:
>>>>
>>>> On Thu, 2011-06-16 at 09:14 -0700, Greg KH wrote:
>>>>>
>>>>> All userspace naming will be taken care of by the usual udev rules, so
>>>>>>
>>>>>> for disks, something like /dev/disk/by-preferred/<fred> which would
>>>>>> be
>>>>>> the usual symbolic link.
>>>>>
>>>>> No, udev can not create such a link after the preferred name is set, as
>>>>> it has no way of knowing that the name was set.
>>>>
>>>> It can if we trigger a uevent. Note: I'm not advocating this ... I'd be
>>>> equally happy having whatever sets the kernel name create the link (or
>>>> tickle udev to create it). We definitely require device links, though,
>>>> to get this to work.
>>
>> Guess all that would work now, including mount(8) not canonicalizing.
>> What would happen if we mount:
>> /dev/disk/by-pretty/foo
>> and some tool later thinks the pretty name should better be 'bar', it
>> writes the name to /sys, we get a uevent, the old link disappears, we
>> get a new link, mount has no device node anymore for the mounted
>> device ...
>>
>> So we basically get a one-shot additional pretty name? Guess, the
>> _single_ name changed anytime later just asks for serious problems. We
>> need to set it very early to be really useful, but how, where is it
>> coming from?
>
> One obvious candidate for a preferred block device name
> is:
> - a SATA disk's WWN (NAA 5 64 bit), or
> - a SCSI disk's logical unit name (e.g. SAS: NAA 5)
>
> These names (actually numbers) are meant to be world wide
> unique.
>
> The kernel's device naming (following from how devices are
> discovered) is topological. However at higher levels
> the user is interested in the device identity. So if
> unique device names were used as preferred names and
> preferred names were unique (in a Linux system at any
> given time) then any subsequent path to an existing device
> would be highlighted. [That is because subsequent attempts
> to create its preferred name would fail because it is
> already there.]
>
> You don't need thousands of dollars of equipment to
> demonstrate this point. An external single disk
> SATA enclosure with a USB and eSATA interface will do.
Udev does that already since quite a while. This is my cheap laptop:
# find /dev/disk/ -name "wwn*"
/dev/disk/by-id/wwn-0x50015179593f3038-part1
/dev/disk/by-id/wwn-0x50015179593f3038-part4
/dev/disk/by-id/wwn-0x50015179593f3038-part3
/dev/disk/by-id/wwn-0x50015179593f3038-part2
/dev/disk/by-id/wwn-0x50015179593f3038
Kay
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists