Commit Graph

266 Commits

Author SHA1 Message Date
Josh Poimboeuf
68e4cff461 kpatch: change wording of "load to" to "load into" 2014-04-14 12:30:11 -05:00
Seth Jennings
e1099dbbc1 Merge pull request #115 from madper/master
kpatch-build: prevent die if only part of objects have no change
2014-04-10 22:40:18 -05:00
Madper Xie
ab29b1ff59 kpatch-build: prevent die if only part of objects have no change
Consider following patch: https://lkml.org/lkml/diff/2014/1/7/637/1
Kpatch-build will generate two objects for it. however mlock.o has no
changed function and will cause kpatch-build die.
Signed-off-by: Madper Xie <cxie@redhat.com>
2014-04-11 11:24:05 +08:00
Seth Jennings
35736db592 Merge pull request #117 from useidel/master
changelog of SPEC updated ... forgotten before :-(
2014-04-10 16:56:32 -05:00
Udo Seidel
f0b5756267 changelog of SPEC updated ... forgotten before :-( 2014-04-10 23:53:45 +02:00
Seth Jennings
dd204989e6 Merge pull request #114 from spartacus06/reject-init-changes
fail if init section has changed
2014-04-10 16:12:12 -05:00
Seth Jennings
fcbf46978f Merge pull request #111 from spartacus06/change-subcommands
change 'apply/remove' to 'load/unload'
2014-04-10 16:11:54 -05:00
Seth Jennings
205a508489 Merge pull request #116 from useidel/master
adapted Makefile.inc contrib/Makefile and SPEC file for dracut modules
2014-04-10 16:06:47 -05:00
Udo Seidel
177b42d951 adapted Makefile.inc contrib/Makefile and SPEC file for dracut modules 2014-04-10 22:23:00 +02:00
Seth Jennings
7b15e23149 fail on changed init section
fixes issue #103

Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-08 12:45:55 -05:00
Seth Jennings
6626db1ad8 add debug message when section has changed
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-08 12:40:23 -05:00
Seth Jennings
53f051ea18 Merge pull request #110 from spartacus06/fixups
Fixups
2014-04-07 12:15:36 -05:00
Seth Jennings
c4d652c5da remove vim metadata from files
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-07 12:13:53 -05:00
Seth Jennings
6655d00c60 change 'apply/remove' to 'load/unload'
After removing the distinction between 'enabled' modules and 'applied'
modules in 022e42bc, we can change the 'apply' and 'remove' subcommands,
to more intuitive 'load' and 'unload' subcommands.

Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-07 12:12:40 -05:00
Seth Jennings
8ba2d549cc add -R to remove directory
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-07 12:06:58 -05:00
Seth Jennings
065fde63d9 add sourcerpm option to kpatch-build man page
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-04-07 12:02:33 -05:00
Seth Jennings
f3a4275ed8 Merge pull request #106 from jpoimboe/kpatch-install-initrd
kpatch: install patch modules to initrd
2014-04-07 11:02:30 -05:00
Seth Jennings
21586035d7 Merge pull request #105 from jpoimboe/kpatch-build-srpm
kpatch-build: add option to build from source RPM
2014-04-07 10:36:10 -05:00
Josh Poimboeuf
b487be539c kpatch: print status messages
Print status messages for load/unload/install/uninstall to give the user
a better idea of what's going on.
2014-04-01 15:57:57 -05:00
Josh Poimboeuf
ff2b545f04 kpatch: load core module in kpatch apply 2014-04-01 15:47:22 -05:00
Josh Poimboeuf
eb1bd13278 kpatch: install to initrd and load patch modules on boot
When doing "kpatch install", copy the patch modules to the initrd and
install a dracut hook which calls "kpatch apply --all".
2014-04-01 15:47:22 -05:00
Josh Poimboeuf
9bbea5c604 kpatch-build: small refactor
Split up the USERSRCDIR and SRCDIR code paths for better readability.
2014-04-01 11:07:08 -05:00
Josh Poimboeuf
0cb8025eff kpatch-build: add option to build from source RPM 2014-04-01 11:03:36 -05:00
Seth Jennings
68c925d9b2 Merge pull request #100 from jpoimboe/kpatch-build-noargs
kpatch-build: getopts arg parsing cleanup
2014-04-01 10:40:22 -05:00
Seth Jennings
e87b37aafe Merge pull request #102 from jpoimboe/patch-no-reverse
kpatch-build: improve error handling for an already applied patch
2014-04-01 10:30:11 -05:00
Seth Jennings
847842b1c3 Merge pull request #101 from jpoimboe/kpatch-man
man: remove enable/disable from kpatch man page
2014-04-01 10:28:41 -05:00
Josh Poimboeuf
5a999ef68c kpatch-build: create applied-patch only after verifying patch
Create the applied-patch file only after the patch has been verified.

Otherwise if you accidentally supply a patch which had already been
applied to the source, the cleanup trap won't reverse apply it when
exiting the script.
2014-04-01 07:51:21 -05:00
Josh Poimboeuf
7fe5c3fef4 kpatch-build: don't ask to reverse apply patch
If the patch had already been mistakenly applied to the source tree,
don't ask the user if it should be reverse applied.  Instead, just exit
with an error.
2014-04-01 07:49:51 -05:00
Josh Poimboeuf
1e21aefbd4 man: remove enable/disable from kpatch man page
They were already removed from the kpatch script with commit 022e42b.
2014-04-01 07:38:37 -05:00
Josh Poimboeuf
2728a7faae kpatch: remove obsolete comment 2014-04-01 07:38:00 -05:00
Josh Poimboeuf
0f464b8500 kpatch-build: add "no patch file specified" error 2014-04-01 07:16:12 -05:00
Josh Poimboeuf
ece4124a45 kpatch-build: getopts arg parsing cleanup
Cleanup the kpatch-build argument parsing a little bit:
- gracefully handle no args
- allow white space in filenames
- use 'eval set -- $options' to allow use of $1 and $2 variables
2014-03-31 16:02:50 -05:00
Josh Poimboeuf
47b0b2a45c Merge pull request #99 from spartacus06/remove-enable
Remove enable/disable from kpatch script
2014-03-31 12:37:12 -05:00
Seth Jennings
022e42bc1b Remove enable/disable from kpatch script
The extra steps aren't justified right now and make the patch
application and management processes more convoluted.

Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-31 11:48:34 -05:00
Josh Poimboeuf
3e08618447 Merge pull request #97 from spartacus06/mkdir-install
Ensure install directory exists
2014-03-28 13:20:27 -07:00
Seth Jennings
90646d40a8 fix error message
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-28 13:24:20 -05:00
Seth Jennings
b327876cf2 ensure patch install directory exists
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-28 13:23:31 -05:00
Josh Poimboeuf
e88287d8dd Merge pull request #96 from jpoimboe/gzip-k
man: use older '-c' option
2014-03-27 22:26:44 -07:00
Josh Poimboeuf
e7dbaf0b52 man: use older '-c' option
The gzip '-k' option isn't supported on older versions of gzip, so use
the more portable '-c' option to send the compressed file to stdout.
2014-03-27 22:21:43 -07:00
Josh Poimboeuf
bf58321229 Merge pull request #92 from spartacus06/man-clean
add clean target for man
2014-03-27 19:57:13 -07:00
Seth Jennings
28f98196df add man file deps to .gz targets
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-27 21:36:00 -05:00
Josh Poimboeuf
7523fd3460 Merge pull request #95 from spartacus06/debug-option
add debug option to kpatch-build
2014-03-27 19:33:51 -07:00
Seth Jennings
b65a8fddb4 Merge pull request #91 from jpoimboe/changed-objs
skip scripts/mod files when detecting changed objs
2014-03-27 21:33:13 -05:00
Josh Poimboeuf
fcd8d96b08 Merge pull request #93 from spartacus06/fixes
check for changed sections that are not included
2014-03-27 19:30:25 -07:00
Josh Poimboeuf
e904701b9d use "grep -e" instead of multiple grep invocations 2014-03-27 19:14:41 -07:00
Seth Jennings
3dab7255c0 Merge pull request #94 from jpoimboe/module-symvers
support CONFIG_MODVERSIONS=y
2014-03-27 19:02:40 -05:00
Seth Jennings
2b4afa4695 add debug option to kpatch-build
When debugging kpatch-build failures it can be
beneficial to have the scratch files in /tmp that
kpatch-build was operating on.  These are
removed by default, as they can quickly fill /tmp.
However, for debugging reasons, the option should
exist to keep them around.

Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-27 18:49:44 -05:00
Josh Poimboeuf
3b489e7d29 support CONFIG_MODVERSIONS=y
When CONFIG_MODVERSIONS is enabled, loading of the patch module fails
with "no symbol version for kpatch_register".  When building the patch
module, we need to point it to the core module's Module.symvers file.

This also works when CONFIG_MODVERSIONS is disabled, since
Module.symvers is created regardless.
2014-03-27 16:36:43 -07:00
Seth Jennings
a72abf3f14 add clean target for man
Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-27 17:47:10 -05:00
Seth Jennings
ead06280df check for changed sections that are not included
There are many cases where a section may have
changed due to soure-level change but the inclusion
logic has not selected it for output.  Some of these
cases are real no-go situations like changing data
structures.  Some are just situations that
create-diff-object isn't smart enough to figure out
(yet).

Either way, it should be considered fatal when a
changed section hasn't been selected for output.

Signed-off-by: Seth Jennings <sjenning@redhat.com>
2014-03-27 17:38:02 -05:00