# Install packages $ yum install git gcc ccache # Clone KVM git tree $ git clone git://git.kernel.org/pub/scm/virt/kvm/kvm.git kvm-for-3.10.1 # Cd into the directory $ cd kvm-for-3.10.1 # Build a tar archive with latest HEAD (you can also specify tags, by getting info from 'git tag') $ git archive --format=tar.gz HEAD >git-kvm-3.10.1.tar.gz # Copy the tar.gz into ~/rpmbuild/SOURCES $ cp -r git-kvm-3.10.1.tar.gz ~/rpmbuild/SOURCES/ $ cd ~/rpmbuild/SOURCES/ # Now, fetch the SRPM for 3.10.0, replace the tar ball with the above one $ wget http://kojipkgs.fedoraproject.org//packages/kernel/3.10.0/0.rc0.git21.1.fc20/src/kernel-3.10.0-0.rc0.git21.1.fc20.src.rpm # Install the just downloaded SRPM $ rpm -ivh kernel-3.10.0-0.rc0.git21.1.fc20.src.rpm # $ mv linux-3.9.tar.xz /var/tmp # Configure xz compression $ git config tar.tar.xz.command "xz -c" # Run the git archive again, but w/ xz compression, and a prefix $ git archive --format=tar.xz --prefix=linux-3.10/ HEAD >git-kvm-3.10.1.tar.xz # In the SPEC file, change the ========== ... # change by kashyap %define base_sublevel 10 ... # change by kashyap %define stable_update 1 ... ========== ========== $ cp git-kvm-3.10.1.tar.xz ~/rpmbuild/SOURCES/linux-3.10.tar.xz $ cd ~/rpmbuild/SPECS/ $ rpmbuild -bp SPECS/kernel.spec . . . . . + patch -p1 -F1 -s 1 out of 14 hunks FAILED -- saving rejects to file arch/x86/kernel/cpu/perf_event_intel.c.rej 1 out of 2 hunks FAILED -- saving rejects to file drivers/firmware/Kconfig.rej [760/1000] Reversed (or previously applied) patch detected! Assume -R? [n] Apply anyway? [n] 1 out of 1 hunk ignored -- saving rejects to file drivers/firmware/efivars.c.rej 1 out of 10 hunks FAILED -- saving rejects to file drivers/gpio/gpio-pxa.c.rej 1 out of 36 hunks FAILED -- saving rejects to file drivers/media/dvb-frontends/mb86a20s.c.rej 1 out of 18 hunks FAILED -- saving rejects to file drivers/media/pci/cx25821/cx25821-video.c.rej 1 out of 14 hunks FAILED -- saving rejects to file drivers/net/bonding/bond_main.c.rej 1 out of 217 hunks FAILED -- saving rejects to file drivers/net/ethernet/intel/igb/igb_main.c.rej 1 out of 6 hunks FAILED -- saving rejects to file drivers/net/wireless/ath/ath9k/dfs_pattern_detector.c.rej 6 out of 11 hunks FAILED -- saving rejects to file drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c.rej 1 out of 11 hunks FAILED -- saving rejects to file drivers/ssb/driver_chipcommon_pmu.c.rej 1 out of 14 hunks FAILED -- saving rejects to file drivers/tty/tty_io.c.rej 1 out of 3 hunks FAILED -- saving rejects to file drivers/video/fbmem.c.rej 1 out of 3 hunks FAILED -- saving rejects to file include/net/scm.h.rej 1 out of 7 hunks FAILED -- saving rejects to file net/batman-adv/main.c.rej 3 out of 10 hunks FAILED -- saving rejects to file net/batman-adv/routing.c.rej 1 out of 40 hunks FAILED -- saving rejects to file net/ipv4/tcp_input.c.rej 1 out of 9 hunks FAILED -- saving rejects to file net/netfilter/ipset/ip_set_bitmap_ipmac.c.rej 2 out of 63 hunks FAILED -- saving rejects to file net/openvswitch/datapath.c.rej error: Bad exit status from /var/tmp/rpm-tmp.ZbCbfH (%prep) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.ZbCbfH (%prep) ========== At this point, I think I'll have to wait for Linus to pull KVM updates for 3.10 merge window. - http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg428794.html ========== # Other thoughts: Maybe get a proper config file, and build $ rpm -ivh SRPMS/kernel-3.10.0-0.rc0.git21.1.fc20.src.rpm $ rpmbuild -bp SPECS/kernel.spec ==========