All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Anderson <anderson@redhat.com>
To: Aravinda Prasad <aravinda@linux.vnet.ibm.com>
Cc: ananth@in.ibm.com, mahesh@linux.vnet.ibm.com,
	kexec@lists.infradead.org, LChouinard@s2sys.com,
	tachibana@mxm.nes.nec.co.jp, kumagai-atsushi@mxc.nes.nec.co.jp,
	Vivek Goyal <vgoyal@redhat.com>,
	buendgen@de.ibm.com
Subject: Re: [PATCH v2 0/7] makedumpfile security key filtering with eppic
Date: Thu, 15 Nov 2012 09:27:45 -0500 (EST)	[thread overview]
Message-ID: <348117236.32179739.1352989665917.JavaMail.root@redhat.com> (raw)
In-Reply-To: <50A4E524.8020702@linux.vnet.ibm.com>


----- Original Message -----
> 
> struct key in include/linux/key.h holds "authentication token"/"access
> credential"/"keyring". Suppose these entries should be scrubbed from the
> dumpfile. Then the keyring_name_hash hash table should be scanned and
> for each non-empty list, the entire list should be traversed and
> payload.value (or any other data) in struct key should be cleared.
> 
> Now the EPPIC macro looks like this:
> 
> int
> key()
> {
>     int i;
>     struct list_head *head;
>     struct list_head *next, *prev;
> 
>     head = (struct list_head *)keyring_name_hash;
> 
>     for (i = 0; i < 32; i++)
>     {
>         next = (struct list_head *) head[i].next;
>         prev = (struct list_head *) head[i].prev;
> 
>         if (!next)
>             continue;
> 
>         do
>         {
>             struct key *mykey, *off = 0;
> 
>             mykey = (struct key *)((unsigned long)(next)
>                       - ((unsigned long)&(off->type_data)));
> 
>             memset((char *)mykey->payload.value, 'X', 0x8);
> 
>             next = *(struct list_head **) mykey->type_data.link.next;
>         } while (next != prev);
>     }
>     return 1;
> }
> 
> The data can be cleared by specifying:
> makedumpfile -c -d 31 -x vmlinux --eppic key.c vmcore filtered_vmcore
>
> makedumpfile with the help of eppic will interpret the macro key.c,
> traverses all the hash chains and erases paylod.value of struct key.
> >>>
> >>> - What's the memory footprint of libeppic.a? Looks like this will be
> >>>   linked statically with makedumpfile, and how much is the size bloat of
> >>>   makedumpfile.
> >>
> >> Memory footprint of libeppic.a is around 1MB. Yes, this will be
> >> statically linked to makedumpfile. Users should specify EPPIC=on while
> >> building the makedumpfile and hence linking libeppic.a is optional
> > 
> > How would distributions handle it. Will we continue to build makedumpfile
> > without EPPIC=on. Any increase in initramfs size increase is frowned upon
> > in general.
> 
> We would like distributions to build makedumpfile with EPPIC=on.
> 
> I am not sure, but do you think ~1MB is too much increase to go with?
>
> >>>
> >>> - Is this supposed to work from kdump initramfs or it is supposed to be
> >>>   used on already saved dump (later during post processing).
> >>
> >>
> >> For the time being, it is only during post processing.
> > 
> > Again, how distributions will handle it. If it is being integrated
> > makedumpfile, as opposed to an stand alone utility, that means it
> > makedumpfile needs to link against this library so that somebody can
> > later filter out the symbols. And that means initramfs size bloat
> > too?
> 
> Yes, makedumpfile needs to be linked against eppic library for filtering
> data and this will increase makedumpfile size and initramfs size too.

Just to clarify -- your example indicates that the vmlinux file is required
for this facility to work, correct?
 
> makedumpfile -c -d 31 -x vmlinux --eppic key.c vmcore filtered_vmcore

Clearly distros won't be putting the vmlinux file in the initramfs -- that's
the whole reasoning behind vmcoreinfo.  So the 99% of users that aren't
interested in scrubbing will have to pay the penalty of the larger makedumpfile
binary.

Dave


_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  reply	other threads:[~2012-11-15 14:28 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-08 13:37 [PATCH v2 0/7] makedumpfile security key filtering with eppic Aravinda Prasad
2012-11-08 13:38 ` [PATCH v2 1/7] Initialize and setup eppic Aravinda Prasad
2012-11-15 16:04   ` Vivek Goyal
2012-11-16  9:43     ` Aravinda Prasad
2012-11-08 13:38 ` [PATCH v2 2/7] makedumpfile and eppic interface layer Aravinda Prasad
2012-11-08 13:38 ` [PATCH v2 3/7] Eppic call back functions to query a dump image Aravinda Prasad
2012-11-08 13:38 ` [PATCH v2 4/7] Implement apigetctype call back function Aravinda Prasad
2012-11-08 13:39 ` [PATCH v2 5/7] Implement apimember and apigetrtype call back functions Aravinda Prasad
2012-11-08 13:39 ` [PATCH v2 6/7] Extend eppic built-in functions to include memset function Aravinda Prasad
2012-11-08 13:39 ` [PATCH v2 7/7] Support fully typed symbol access mode Aravinda Prasad
2012-11-14  1:15 ` [PATCH v2 0/7] makedumpfile security key filtering with eppic Atsushi Kumagai
2012-11-14 14:54 ` Vivek Goyal
2012-11-14 17:06   ` Aravinda Prasad
2012-11-14 17:53     ` Vivek Goyal
2012-11-15 12:50       ` Aravinda Prasad
2012-11-15 14:27         ` Dave Anderson [this message]
2012-11-15 15:55           ` Vivek Goyal
2012-11-16  9:52             ` Aravinda Prasad
2012-11-16 14:36               ` Vivek Goyal
2012-11-20  9:47                 ` Atsushi Kumagai
2012-11-21  7:19                   ` Aravinda Prasad
2012-11-21 13:57                     ` Vivek Goyal
2012-11-22 17:14                       ` Aravinda Prasad
2012-11-26 14:04                         ` Vivek Goyal
2012-12-03  6:02                           ` Aravinda Prasad
2012-12-03 13:20                             ` Vivek Goyal
2012-12-03 14:35                               ` Aravinda Prasad
2012-12-03 18:40                                 ` Vivek Goyal
2012-12-04  8:36                                   ` Atsushi Kumagai
2012-12-04  8:56                                     ` Aravinda Prasad
2012-12-06 15:26                             ` Dave Anderson
2012-12-07  6:05                               ` Aravinda Prasad
2012-12-07 13:46                                 ` Luc Chouinard
2012-12-07 21:59                                   ` Vivek Goyal
2012-12-10  7:32                                     ` Aravinda Prasad
2012-12-10 11:35                                       ` Aravinda Prasad
2012-11-16  9:49           ` Aravinda Prasad
2012-11-15 15:49         ` Vivek Goyal
2012-11-16 11:10           ` Aravinda Prasad
2012-11-16 14:59             ` Vivek Goyal
2012-11-14 20:15     ` Vivek Goyal
2012-11-15 12:55       ` Aravinda Prasad
2012-11-14 20:21     ` Dave Anderson
2012-11-15 13:27       ` Aravinda Prasad

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=348117236.32179739.1352989665917.JavaMail.root@redhat.com \
    --to=anderson@redhat.com \
    --cc=LChouinard@s2sys.com \
    --cc=ananth@in.ibm.com \
    --cc=aravinda@linux.vnet.ibm.com \
    --cc=buendgen@de.ibm.com \
    --cc=kexec@lists.infradead.org \
    --cc=kumagai-atsushi@mxc.nes.nec.co.jp \
    --cc=mahesh@linux.vnet.ibm.com \
    --cc=tachibana@mxm.nes.nec.co.jp \
    --cc=vgoyal@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.