All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary
Date: Fri, 01 Jul 2011 16:00:44 +0000	[thread overview]
Message-ID: <4E0DEF2C.3040504@zytor.com> (raw)
In-Reply-To: <20110701153634.GA27407@elte.hu>

On 07/01/2011 08:36 AM, Ingo Molnar wrote:
> 
> So we could kill multiple birds with the same stone here:
> 
>  - remove various ugly uses of /dev/mem (including the rootkit usage),
>    with or without strict-devmem
> 
>  - extending it to above-4G for inspection purposes
> 
>  - allowing to kill /dev/mem access runtime similar to the 
>    disable_modules lock-down killswitch, for the so inclined.
> 
> Would you be interested in modifying your patch-set in such a 
> fashion?
> 

There is another use that I have looked at, as well: for testing
purposes, it would be extremely good to be able to dirty and/or flush an
arbitrary physical cache line for testing purposes.

This is very very similar to /dev/mem usage -- access to an arbitrary
chunk of memory -- and a fully enabled /dev/mem can of course support
this use (just mmap the page with the relevant cache line).  However, it
could also be a separate device which could have looser permissions than
/dev/mem; or a set of ioctls on /dev/mem with a separate kill switch,
because no data would ever be have modified or returned to user space.

Either way, though, we found that it would share a lot of code with the
/dev/mem implementation, and as such fixing up the underlying machinery
is the sanest way to upstream this.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.


WARNING: multiple messages have this Message-ID (diff)
From: hpa@zytor.com (H. Peter Anvin)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses
Date: Fri, 01 Jul 2011 09:00:44 -0700	[thread overview]
Message-ID: <4E0DEF2C.3040504@zytor.com> (raw)
In-Reply-To: <20110701153634.GA27407@elte.hu>

On 07/01/2011 08:36 AM, Ingo Molnar wrote:
> 
> So we could kill multiple birds with the same stone here:
> 
>  - remove various ugly uses of /dev/mem (including the rootkit usage),
>    with or without strict-devmem
> 
>  - extending it to above-4G for inspection purposes
> 
>  - allowing to kill /dev/mem access runtime similar to the 
>    disable_modules lock-down killswitch, for the so inclined.
> 
> Would you be interested in modifying your patch-set in such a 
> fashion?
> 

There is another use that I have looked at, as well: for testing
purposes, it would be extremely good to be able to dirty and/or flush an
arbitrary physical cache line for testing purposes.

This is very very similar to /dev/mem usage -- access to an arbitrary
chunk of memory -- and a fully enabled /dev/mem can of course support
this use (just mmap the page with the relevant cache line).  However, it
could also be a separate device which could have looser permissions than
/dev/mem; or a set of ioctls on /dev/mem with a separate kill switch,
because no data would ever be have modified or returned to user space.

Either way, though, we found that it would share a lot of code with the
/dev/mem implementation, and as such fixing up the underlying machinery
is the sanest way to upstream this.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

WARNING: multiple messages have this Message-ID (diff)
From: "H. Peter Anvin" <hpa@zytor.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Petr Tesarik <ptesarik@suse.cz>,
	Christoph Hellwig <hch@infradead.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Fenghua Yu <fenghua.yu@intel.com>, Ingo Molnar <mingo@redhat.com>,
	Paul Mundt <lethal@linux-sh.org>,
	Russell King <linux@arm.linux.org.uk>,
	Thomas Gleixner <tglx@linutronix.de>,
	Tony Luck <tony.luck@intel.com>,
	x86@kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-ia64@vger.kernel.org, linux-sh@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Arjan van de Ven <arjan@infradead.org>,
	Dave Jones <davej@redhat.com>,
	Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses
Date: Fri, 01 Jul 2011 09:00:44 -0700	[thread overview]
Message-ID: <4E0DEF2C.3040504@zytor.com> (raw)
In-Reply-To: <20110701153634.GA27407@elte.hu>

On 07/01/2011 08:36 AM, Ingo Molnar wrote:
> 
> So we could kill multiple birds with the same stone here:
> 
>  - remove various ugly uses of /dev/mem (including the rootkit usage),
>    with or without strict-devmem
> 
>  - extending it to above-4G for inspection purposes
> 
>  - allowing to kill /dev/mem access runtime similar to the 
>    disable_modules lock-down killswitch, for the so inclined.
> 
> Would you be interested in modifying your patch-set in such a 
> fashion?
> 

There is another use that I have looked at, as well: for testing
purposes, it would be extremely good to be able to dirty and/or flush an
arbitrary physical cache line for testing purposes.

This is very very similar to /dev/mem usage -- access to an arbitrary
chunk of memory -- and a fully enabled /dev/mem can of course support
this use (just mmap the page with the relevant cache line).  However, it
could also be a separate device which could have looser permissions than
/dev/mem; or a set of ioctls on /dev/mem with a separate kill switch,
because no data would ever be have modified or returned to user space.

Either way, though, we found that it would share a lot of code with the
/dev/mem implementation, and as such fixing up the underlying machinery
is the sanest way to upstream this.

	-hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.


  reply	other threads:[~2011-07-01 16:00 UTC|newest]

Thread overview: 128+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-17  8:38 [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Petr Tesarik
2011-06-17  8:38 ` Petr Tesarik
2011-06-17  8:38 ` Petr Tesarik
2011-06-17  8:43 ` [PATCH 01/10] Return EOF on out-of-bounds read from /dev/mem Petr Tesarik
2011-06-17  8:44 ` [PATCH 02/10] (un)xlate_dev_mem_ptr: use phys_addr_t for the @phys parameter Petr Tesarik
2011-06-17  8:45 ` [PATCH 03/10] x86: translate highmem /dev/mem pointers Petr Tesarik
2011-06-17  8:45 ` [PATCH 04/10] ia64: change xlate_dev_mem_ptr's argument to phys_addr_t Petr Tesarik
2011-06-17  8:45   ` Petr Tesarik
2011-06-17  8:45 ` [PATCH 05/10] valid_phys_addr_range: use phys_addr_t for the @addr parameter Petr Tesarik
2011-06-17  8:46 ` [PATCH 06/10] sh: change valid_phys_addr_range's @addr param to phys_addr_t Petr Tesarik
2011-06-17  8:46   ` Petr Tesarik
2011-06-17  8:46 ` [PATCH 07/10] arm: " Petr Tesarik
2011-06-17  8:46   ` Petr Tesarik
2011-06-17  8:47 ` [PATCH 08/10] ia64: " Petr Tesarik
2011-06-17  8:47   ` Petr Tesarik
2011-06-17  8:48 ` [PATCH 09/10] x86: provide arch-specific valid_phys_addr_range() Petr Tesarik
2011-06-17  8:48 ` [PATCH 10/10] Allow reading/writing all memory through /dev/mem Petr Tesarik
2011-06-17  9:30 ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-06-17  9:30   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-06-17  9:30   ` Ingo Molnar
2011-06-17  9:41   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Russell King - ARM Linux
2011-06-17  9:41     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Russell King - ARM Linux
2011-06-17  9:41     ` Russell King - ARM Linux
2011-06-17  9:55   ` Petr Tesarik
2011-06-17  9:55     ` Petr Tesarik
2011-06-17  9:55     ` Petr Tesarik
2011-06-20  2:42     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Américo Wang
2011-06-20  2:42       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Américo Wang
2011-06-20  2:42       ` Américo Wang
2011-06-27  7:46       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Petr Tesarik
2011-06-27  7:46         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Petr Tesarik
2011-06-27  7:46         ` Petr Tesarik
2011-06-19 23:02   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ryan Mallon
2011-06-19 23:02     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ryan Mallon
2011-06-19 23:02     ` Ryan Mallon
2011-06-19 23:44     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary H. Peter Anvin
2011-06-19 23:44       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses H. Peter Anvin
2011-06-19 23:44       ` H. Peter Anvin
2011-06-20  7:41       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-06-20  7:41         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-06-20  7:41         ` Ingo Molnar
2011-06-20 15:59         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary H. Peter Anvin
2011-06-20 15:59           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses H. Peter Anvin
2011-06-20 15:59           ` H. Peter Anvin
2011-06-20 16:40           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-06-20 16:40             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-06-20 16:40             ` Ingo Molnar
2011-06-20 16:44             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary H. Peter Anvin
2011-06-20 16:44               ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses H. Peter Anvin
2011-06-20 16:44               ` H. Peter Anvin
2011-06-21  6:55           ` Srivatsa Vaddagiri
2011-06-21  6:56             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Srivatsa Vaddagiri
2011-06-21  6:55             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Srivatsa Vaddagiri
2011-06-20  0:42     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Matthew Wilcox
2011-06-20  0:42       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Matthew Wilcox
2011-06-20  0:42       ` Matthew Wilcox
2011-06-20  0:46       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ryan Mallon
2011-06-20  0:46         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ryan Mallon
2011-06-20  0:46         ` Ryan Mallon
2011-06-20  0:52         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Matthew Wilcox
2011-06-20  0:52           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Matthew Wilcox
2011-06-20  0:52           ` Matthew Wilcox
2011-06-20  1:02           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ryan Mallon
2011-06-20  1:02             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ryan Mallon
2011-06-20  1:02             ` Ryan Mallon
2011-06-20  7:31     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-06-20  7:31       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-06-20  7:31       ` Ingo Molnar
2011-06-20  8:03       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ryan Mallon
2011-06-20  8:03         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ryan Mallon
2011-06-20  8:03         ` Ryan Mallon
2011-06-20 17:10     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ray Lee
2011-06-20 17:10       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ray Lee
2011-06-20 17:10       ` Ray Lee
2011-06-29  9:05   ` Petr Tesarik
2011-06-29  9:05     ` Petr Tesarik
2011-06-29  9:05     ` Petr Tesarik
2011-07-01 12:58     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 12:58       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 12:58       ` Ingo Molnar
2011-07-01 13:43       ` Petr Tesarik
2011-07-01 13:43         ` Petr Tesarik
2011-07-01 13:43         ` Petr Tesarik
2011-07-01 13:47       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Christoph Hellwig
2011-07-01 13:47         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Christoph Hellwig
2011-07-01 13:47         ` Christoph Hellwig
2011-07-01 14:37         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 14:37           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 14:37           ` Ingo Molnar
2011-07-01 14:41           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Christoph Hellwig
2011-07-01 14:41             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Christoph Hellwig
2011-07-01 14:41             ` Christoph Hellwig
2011-07-01 14:46             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 14:46               ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 14:46               ` Ingo Molnar
2011-07-01 14:54               ` Petr Tesarik
2011-07-01 14:54                 ` Petr Tesarik
2011-07-01 14:54                 ` Petr Tesarik
2011-07-01 15:36                 ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 15:36                   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 15:36                   ` Ingo Molnar
2011-07-01 16:00                   ` H. Peter Anvin [this message]
2011-07-01 16:00                     ` H. Peter Anvin
2011-07-01 16:00                     ` H. Peter Anvin
2011-07-01 16:13                     ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 16:13                       ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 16:13                       ` Ingo Molnar
2011-07-01 19:34                       ` Petr Tesarik
2011-07-01 19:34                         ` Petr Tesarik
2011-07-01 19:34                         ` Petr Tesarik
2011-07-01 19:56                         ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-01 19:56                           ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-01 19:56                           ` Ingo Molnar
2011-07-01 20:44                           ` Petr Tesarik
2011-07-01 20:44                             ` Petr Tesarik
2011-07-01 20:44                             ` Petr Tesarik
2011-07-03 19:46                             ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary Ingo Molnar
2011-07-03 19:46                               ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Ingo Molnar
2011-07-03 19:46                               ` Ingo Molnar
2011-07-05 17:49                               ` [PATCH 00/10] Enhance /dev/mem to allow read/write of Matthew Garrett
2011-07-05 17:49                                 ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses Matthew Garrett
2011-07-05 17:49                                 ` Matthew Garrett
2011-07-05 17:56                                 ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary H. Peter Anvin
2011-07-05 17:56                                   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses H. Peter Anvin
2011-07-05 17:56                                   ` H. Peter Anvin
2011-07-05 22:34                                 ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary H. Peter Anvin
2011-07-05 22:34                                   ` [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses H. Peter Anvin
2011-07-05 22:34                                   ` H. Peter Anvin

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=4E0DEF2C.3040504@zytor.com \
    --to=hpa@zytor.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.