I had a block device driver working fine on Ubuntu 10.04 ( kernel version 2.6.32) . It used to hook into uevent_ops to get the device add/remove notification in init_module.
i.e.

my_uevent_ops = kset->uevent_ops;

kset->uevent_ops = my_uevent_ops_callback;

Now I want to port that driver to Ubuntu 12.04 (kernel 3.2.0-32-generic-pae) ,but the kset->uevent_ops is made constant, so it can't hook into it.
Is their any way to get add/remove event notifications of block devices in my device driver?
Also can I use notifier chain for block devices ?

Thanks in advance.