Guanghui, Cheng | 3 Nov 16:37
Picon

The errors i tried to map iomem to virtual memory

Hello:
I tried to map the hpet iomem to the virtual memory but i got some error. The log is as following:
vtimer | rmgr_pager 4:0
vtimer | hpet_address 0xfed00000
vtimer | hpet size 0x400000
vtimer | hpet_virt_address 0x400000
ROOT: Cannot map page at fed00000 log2_size=12 failed
vtimer | IOMem mapping error : No fpage received
vtimer | __handle_pf(): L4RM: page fault: no entry in region list
vtimer | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
It seems that when I map the iomem the pagesize is not permitted but superpagesize is ok. But i still get the error as "No fpage received". Does anybody tell me what the problem is?
Thanks.
Cheng Guanghui
_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 4 Nov 00:28
Picon
Favicon

Re: The errors i tried to map iomem to virtual memory

Hi,

On Tue Nov 03, 2009 at 23:37:12 +0800, Guanghui, Cheng wrote:
> 	I tried to map the hpet iomem to the virtual memory but i got some error. The 
> log is as following:
> vtimer  | rmgr_pager 4:0
> vtimer  | hpet_address 0xfed00000
> vtimer  | hpet size 0x400000
> vtimer  | hpet_virt_address 0x400000
> ROOT: Cannot map page at fed00000 log2_size=12 failed
> vtimer  | IOMem mapping error : No fpage received
> vtimer  | __handle_pf(): L4RM: page fault: no entry in region list
> vtimer  | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
> 	It seems that when I map the iomem the pagesize is not permitted but 
> superpagesize is ok.  But i still get the error as "No fpage received". Does 
> anybody tell me what the problem is?

roottask can map non-RAM as superpages only. For getting device memory
you should use and query l4io which can handle this much better. Did you
try that?

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Guanghui, Cheng | 4 Nov 01:57
Picon

Re: The errors i tried to map iomem to virtual memory

On Wednesday 04 November 2009 07:28:02 Adam Lackorzynski wrote:
> Hi,
>
> On Tue Nov 03, 2009 at 23:37:12 +0800, Guanghui, Cheng wrote:
> > I tried to map the hpet iomem to the virtual memory but i got some
> > error. The log is as following:
> > vtimer | rmgr_pager 4:0
> > vtimer | hpet_address 0xfed00000
> > vtimer | hpet size 0x400000
> > vtimer | hpet_virt_address 0x400000
> > ROOT: Cannot map page at fed00000 log2_size=12 failed
> > vtimer | IOMem mapping error : No fpage received
> > vtimer | __handle_pf(): L4RM: page fault: no entry in region list
> > vtimer | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
> > It seems that when I map the iomem the pagesize is not permitted but
> > superpagesize is ok. But i still get the error as "No fpage received".
> > Does anybody tell me what the problem is?
>
> roottask can map non-RAM as superpages only. For getting device memory
> you should use and query l4io which can handle this much better. Did you
> try that?
i use roottask to map the non-RAM as superpages now but it can't
work correctly. I try l4io to get iomem mapping today. Later i will mail to you about the this part.
Thanks.
Cheng Guanghui
_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Guanghui, Cheng | 4 Nov 14:11
Picon

Re: The errors i tried to map iomem to virtual memory

On Wednesday 04 November 2009 07:28:02 Adam Lackorzynski wrote:
> Hi,
>
> On Tue Nov 03, 2009 at 23:37:12 +0800, Guanghui, Cheng wrote:
> > I tried to map the hpet iomem to the virtual memory but i got some
> > error. The log is as following:
> > vtimer | rmgr_pager 4:0
> > vtimer | hpet_address 0xfed00000
> > vtimer | hpet size 0x400000
> > vtimer | hpet_virt_address 0x400000
> > ROOT: Cannot map page at fed00000 log2_size=12 failed
> > vtimer | IOMem mapping error : No fpage received
> > vtimer | __handle_pf(): L4RM: page fault: no entry in region list
> > vtimer | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
> > It seems that when I map the iomem the pagesize is not permitted but
> > superpagesize is ok. But i still get the error as "No fpage received".
> > Does anybody tell me what the problem is?
>
> roottask can map non-RAM as superpages only. For getting device memory
> you should use and query l4io which can handle this much better. Did you
> try that?
Hello, Adam:
Now i fixed l4io a little and add the hpet device after the tpm device
in the l4io/server/src/static_cfg_x86.c and now i could map the hpet device
into the virtual device. I could read/write the hpet device directly. This is
a important progress for vtimer server implementation. If i make more i
could report to you.
Thanks for your kind remind.
Best.
Cheng Guanghui


_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam Lackorzynski | 4 Nov 23:10
Picon
Favicon

Re: The errors i tried to map iomem to virtual memory


On Wed Nov 04, 2009 at 21:11:06 +0800, Guanghui, Cheng wrote:
> On Wednesday 04 November 2009 07:28:02 Adam Lackorzynski wrote:
> > Hi,
> >
> > On Tue Nov 03, 2009 at 23:37:12 +0800, Guanghui, Cheng wrote:
> > > 	I tried to map the hpet iomem to the virtual memory but i got some
> > > error. The log is as following:
> > > vtimer  | rmgr_pager 4:0
> > > vtimer  | hpet_address 0xfed00000
> > > vtimer  | hpet size 0x400000
> > > vtimer  | hpet_virt_address 0x400000
> > > ROOT: Cannot map page at fed00000 log2_size=12 failed
> > > vtimer  | IOMem mapping error : No fpage received
> > > vtimer  | __handle_pf(): L4RM: page fault: no entry in region list
> > > vtimer  | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
> > > 	It seems that when I map the iomem the pagesize is not permitted but
> > > superpagesize is ok.  But i still get the error as "No fpage received".
> > > Does anybody tell me what the problem is?
> >
> > roottask can map non-RAM as superpages only. For getting device memory
> > you should use and query l4io which can handle this much better. Did you
> > try that?
> Hello, Adam:
> 	Now i fixed l4io a little and add the hpet device after the tpm device 
> in the l4io/server/src/static_cfg_x86.c and now i could map the hpet device
> into the virtual device. I could read/write the hpet device directly. This is
> a important progress for vtimer server implementation.  If i make more i
> could report to you.

Great! :)

Adam
--

-- 
Adam                 adam <at> os.inf.tu-dresden.de
  Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Andre Puschmann | 6 Nov 11:28
Picon
Favicon

Re: The errors i tried to map iomem to virtual memory

Hi,

Guanghui, Cheng wrote:
> Now i fixed l4io a little and add the hpet device after the tpm device
> in the l4io/server/src/static_cfg_x86.c and now i could map the hpet 
> device
> into the virtual device. I could read/write the hpet device directly. 
> This is
> a important progress for vtimer server implementation. If i make more i
> could report to you.
Just out of curiosity, is vtimer a special component related to your
work or is it a general step towards a (working) general-purpose timer
service in DROPS (which would be very nice)?

Regards,
Andre
Guanghui, Cheng | 6 Nov 15:58
Picon

Re: The errors i tried to map iomem to virtual memory

On Thursday 05 November 2009 06:10:04 Adam Lackorzynski wrote:
> On Wed Nov 04, 2009 at 21:11:06 +0800, Guanghui, Cheng wrote:
> > On Wednesday 04 November 2009 07:28:02 Adam Lackorzynski wrote:
> > > Hi,
> > >
> > > On Tue Nov 03, 2009 at 23:37:12 +0800, Guanghui, Cheng wrote:
> > > > I tried to map the hpet iomem to the virtual memory but i got some
> > > > error. The log is as following:
> > > > vtimer | rmgr_pager 4:0
> > > > vtimer | hpet_address 0xfed00000
> > > > vtimer | hpet size 0x400000
> > > > vtimer | hpet_virt_address 0x400000
> > > > ROOT: Cannot map page at fed00000 log2_size=12 failed
> > > > vtimer | IOMem mapping error : No fpage received
> > > > vtimer | __handle_pf(): L4RM: page fault: no entry in region list
> > > > vtimer | L4RM: [PF] read at 0x00400000, ip 0100024e, src 8.02
> > > > It seems that when I map the iomem the pagesize is not permitted but
> > > > superpagesize is ok. But i still get the error as "No fpage
> > > > received". Does anybody tell me what the problem is?
> > >
> > > roottask can map non-RAM as superpages only. For getting device memory
> > > you should use and query l4io which can handle this much better. Did
> > > you try that?
> >
> > Hello, Adam:
> > Now i fixed l4io a little and add the hpet device after the tpm device
> > in the l4io/server/src/static_cfg_x86.c and now i could map the hpet
> > device into the virtual device. I could read/write the hpet device
> > directly. This is a important progress for vtimer server implementation.
> > If i make more i could report to you.
Hello, Adam:
Today I get a small progress about ipet driver for L4/Fiasco because
the hpet driver i mentioned before can't output the correct value and all
fields of hpet driver are 0xFFFFFFFF. Today i find that should be caused by
the Intel buggy chipesets (ICH7 Family) and i also find some code could
fixed it from Linux kernel code that is located in the ich_force_enable_hpet() of arch/x86/kernel/quirks.c.
The solution is like this:
I added two more IO resources named RCBA and HPET in the
l4io/server/src/ static_cfg_x86.c as following:
static l4io_desc_device_t
rcba = { "RCBA", 1, { { L4IO_RESOURCE_MEM, 0xfed1c000, 0xfed1ffff } } };
static l4io_desc_device_t
hpet = {"HPET", 1, { { L4IO_RESOURCE_MEM, 0xfed00000, 0xfed003ff } } };
And then i get the rcba device in the local and do the same behaviour
as the ich_force_enable_hpet() does in the arch/x86/kernel/quirks.c and then
get the hpet device in the local space. This time it could work and display there are 3 timers before it is 16 (F).
From the Linux kernel code this problem should be in the Intel Chipsets
ICH6, ICH7, ICH8, ICH9 and ICH10. But luckily the linux has fixed this problem otherwise i can't get it work.
Thanks.
Cheng Guanghui
_______________________________________________
l4-hackers mailing list
l4-hackers <at> os.inf.tu-dresden.de
http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Da Zheng | 21 Nov 15:40
Picon

ddekit and dde linux2.6

Hi,

I'm trying to understand ddekit and hopefully to port it to Hurd.
It seems that ddekit is still under active development. What is its current development status? I read
http://demo.tudos.org/dsweeper_tutorial.html, which said that new features such as hotplugging and
power management would be added ddekit but it was in 2006. Have those features been added to ddekit? Is it
possible for me to move the Linux USB driver on the top of dde without modification?

What is the status of dde linux2.6 (I mean the one in the directory l4/pkg/dde_linux26)? Is it still under
development? Does it support the features I mentioned above?

Thank you,
Zheng Da
Björn Döbel | 21 Nov 16:57
Picon
Favicon

Re: ddekit and dde linux2.6


Hello,

> I'm trying to understand ddekit and hopefully to port it to Hurd.

good luck.

> It seems that ddekit is still under active development. What is its current development status? 

DDE/Linux 2.6 is supporting Linux 2.6.29 drivers at the moment. The
DDEKit has been developed in parallel along with our experimental
setups, which include network drivers (you might have a look at
l4/pkg/ore) and USB (see l4/pkg/usb), as well as some experimental hard
disk stuff which is not in the SVN.

> I read http://demo.tudos.org/dsweeper_tutorial.html, which said that new features such as
hotplugging and power management would be added ddekit but it was in 2006. Have those features been added
to ddekit? Is it possible for me to move the Linux USB driver on the top of dde without modification?

USB hotplug worked the last time I looked.

Cheers,
Bjoern
Zheng Da | 21 Nov 17:36
Picon

Re: ddekit and dde linux2.6

Hello

2009/11/21 Björn Döbel <doebel <at> os.inf.tu-dresden.de>:
>
>> It seems that ddekit is still under active development. What is its current development status?
>
> DDE/Linux 2.6 is supporting Linux 2.6.29 drivers at the moment. The
> DDEKit has been developed in parallel along with our experimental
> setups, which include network drivers (you might have a look at
> l4/pkg/ore) and USB (see l4/pkg/usb), as well as some experimental hard
> disk stuff which is not in the SVN.

I suppose DDEKit allows us to build and run any Linux drivers without
modification. Why do we still need to make some effort to port drivers
to DDEKit? Do I miss something?

Zheng Da

Gmane