[systemd-devel] Problems with SWAP in 204

Henrik /KaarPoSoft henrik at kaarposoft.dk
Wed Jun 19 05:06:35 PDT 2013


On 06/19/2013 12:10 PM, Peeters Simon wrote:
> 2013/6/19 Henrik /KaarPoSoft <henrik at kaarposoft.dk>:
>> Dear all,
>
> hei,
>
>> I am experiencing a strange problem with swap using systemd 204.
>> Any help in diagnosing this would be most appreciated.
>>
>> I have 64 GB of physical memory,
>> and two 64 GB swap partitions.
>
> Do these have the same partlabel?
> I think this might couse confusion for systemd/udev

Only one of the partitions has a partlabel at all.
Output of blkid attached.

>> My fstab is attached.
>>
>> When booting, I get a few errors related to swap; in particular:
>> Failed to reread /proc/swaps: File exists
>
> In my (untested) theory this is because your swap is mounted (by the
> initrd?) and while loading existing swaps from /proc/swaps systemd
> tries to create /dev/disk/by-partlabel/Linux\x20swap.swap twice,
> failing the second time.
>

My initrd does not mount swap:
http://sourceforge.net/p/kaarpux/code/ci/master/tree/master/packages/l/linux.files/init

>> swapon: /dev/sda3: swapon failed: Device or resource busy
> probably similar to above, when sda4 comes online systemd tries to
> activate all services belonging to it, blkid tells that partlabel is
> "Linux swap" so systemd tries to activate
> /dev/disk/by-partlabel/Linux\x20swap.swap but
> /dev/disk/by-partlabel/Linux\x20swap is a symlink to /dev/sda3 which
> is already activated.
>
> [...]
>
> even though i am not sure what is happening here, it also talks about
> /dev/disk/by-partlabel/Linux\x20swap so it is probably the same issue
> as above
>
> If the above is the case and changing the partlabel of one of the swap
> devices solves the problem, then this is a bug in systemd since
> nothing obligates parlabel to be unique.
>

As per my input above, it does not seem to be a problem with identical 
PARTLABELs.

However, I do think that you are on to something important here!

According to the output of systemctl --full --all --type=swap
(attached in previous mail)
it seems that systemd is trying to activate swap by every naming scheme
(id, uuid, partuuid, partlabel, /dev)
without realizing that they symlink to the the same (two) partitions.

/Henrik

-------------- next part --------------
blkid | grep swap
-----------------

/dev/sda3: UUID="066af73a-d8fd-49b7-b806-05f625681d4d" TYPE="swap" PARTLABEL="Linux swap" PARTUUID="557e61b0-28ee-40cb-9c06-4d083a86e131" 
/dev/sda4: UUID="e84600d2-060e-4758-a0aa-e31a069f3ac8" TYPE="swap" 
/dev/sdc39: UUID="a306e5d1-9bd1-4b7a-96f4-70c2245dcd39" TYPE="swap" 


More information about the systemd-devel mailing list