@nasheayahu Hello,
I do this with a my homelab disk since I imported it from a physical machine:
mkdir /srv/NAS
xe sr-create type=udev sm-config:location=/srv/NAS name-label="NAS Disks"
Then you make a symlink to the device:
ln -s /dev/sda /srv/NAS/sda #although it might be better to use a stable identifier if you have multiple disks
xe sr-scan uuid=<UUID of the udev SR>
The disk will appear as a VDI in the SR that you can then plug to a VM.
I also renamed the VDI [NOSNAP][NOBAK] NAS Drive
[NOSNAP][NOBAK] instruct XO to not snapshot and export the disk in backups (since it can't).
It's not passthrough, as in the disk is not directly given to the VM, but tapdisk (the process virtualizing storage) will give access to the whole disk to the guest, so it can mount any FS on it.
The udevSR is usually used for plugging USB from what I could gather from existing code. But users in homelabs have been using it like this for a while.
Though you will likely not have native performance level since it's not exactly passthrough.