I just recently got my first domU up on Slackware 10.x and am now [finally] moving forward with server consolidation at my organization.
For the most part, (assuming a "full install"), setting up Slackware as a dom0 host is relatively straightforward, following the Xen installation instructions. For this, I found the README in the source distribution more relevant than the Xen User Guide. To get Xen up and running on Slackware I:
* downloaded the Xen 3.0.2 source distribution and per step '3' of the instructions in the included README ("Quick Start Guide"), executed 'make world' (er, after 'cd [source-dir]' 'natch
). Note that this was necessary since the binary package zonks the console in Slackware and causes miscellaneous other minor issues. :-p
[[ Don't bother trying to build separate 'xen0' and 'xenU' kernels since: a) these are "primarily for developers working on Xen"; b) imaging domUs easier from a single '/lib/modules' source (IMO); and c) didn't work for me, anyway :-p (though, I gave it only a passing try). ]]
At this point, you should have a default, modularized, 2.6.16-xen kernel. If you have special driver needs, have an existing 2.6 kernel you want to reconfigure from (copy over '.config' and "make linux-2.6-xen-config CONFIGMODE=oldconfig"), or want to trim some module fat, proceed with step '5'... I recommend going through this step and ensuring that at least your disk and filesystem support is "compiled in". The recompile was worth it to me (only another 26 minutes on my AthlonXP 2800+ w/1GB).
When done, "make install" your Slackware ready "Xen".
* Installed grub (hint: 'swaret --install grub'; http :// swaret.sf.net). Using 'grubconfig' sets up an initial grub configuration. Then edit /boot/grub/menu.lst per step '2' of the README's "Pre-built..." section.
* Rebooted into Xen...
Set up your domUs per the Xen User Guide. However, note that bridge scripts do not completely set up the bridge in Slackware, since only the domU's virtual interface ('vifX.Y') is added to the bridge (hair puller!). To get this resolved, write a wrapper script to start your domain(s) and execute "brctl addif <bridge> ethX".