2013-06-23 17:26:42

by Philip J. Kelleher

[permalink] [raw]
Subject: Question: DLPAR remove with mounted partitions.

Hello all,

I have a question regarding a DLPAR remove operations with a mounted
partition.

I am writing a block level device driver that will support DLPAR remove
operations and I was doing some testing with a partition from the adapter
still mounted while I ran a DLPAR remove.

The remove completed successfully and lspci doesn't list my device
anymore. However, I ran the 'df' command and noticed that the partition
was still listed in the output. I, then, ran an 'ls' on the mount point
for that partition and a Kernel Panic occured.

I fixed the panic by setting the queuedata member to NULL in the
request_queue object and checking the request_queue for a NULL queuedata
in the make_request function.

My main question is this: Should the Kernel allow for a successful DLPAR
remove while there are still reference counts still active on the
device? If so, is my implementation the correct way to countering the issue?

Thanks in advance.

Regards,
-Philip Kelleher