linux-kernel mailing list

FromSubjectsort iconDate
Kim
Website info
I know you've seen those work at home programs before, but this one is for real! Selling coffee recipe downloads for $1 each on an affiliate website and you keep all the money! They charge 32.95 for the website for life & give you a refund after you earn $150.00. I signed up & got the refund in 4 days, check it out! www.CoffeeKorner.com/members.htm See ya! Kim -
Sep 19, 10:28 pm 2007
Robert Hancock
Re: Out of socket memory
Increasing that will likely make things worse, not better, as it allows more memory to be allocated for each socket. I should think you want to adjust those values down, not up.. -- Robert Hancock Saskatoon, SK, Canada To email, remove "nospam" from hancockr@nospamshaw.ca Home Page: http://www.roberthancock.com/ -
Sep 19, 8:51 pm 2007
Ilya Eremin
Out of socket memory
Hello, I am running a P2P related server, which has many connections to it at one time (about 100,000 at peak times). But I have been getting eserver invoked oom-killer: gfp_mask=0xd0, order=0, oomkilladj=0 errors followed by Out of socket memory I believe this is related to rmem, but I am not sure. Here's my current net related sysctl settings net.core.wmem_max = 8388608 net.core.rmem_max = 8388608 net.core.wmem_default = 104448 net.core.rmem_default = 104448 net.core.dev_weight = 64 net.core...
Sep 19, 7:26 pm 2007
Linus Torvalds
Arr! Linux 2.6.23-rc7
Ahoy me laddies (and beauties), time for the traditional "Talk Like a Pirate Day" kernel release! Now, last year we had a full release (2.6.18 was immortalized on TLAP-2006), but this year I'm chickening out, and we're just doing what is hopefully going to be the last -rc release for the 2.6.23 series. I'm not including the diffstat, because it got blown up by the resurrection of the sk98lin driver - because skge that is supposed to supplant it doesn't handle some of the hardware. Oh well....
Sep 19, 7:17 pm 2007
Chris Holvenstot
Mask Issue?
Still being a little new at this I am not sure if this is an issue at all or not but I noted that while building the 2.6.23-rc6-git8 kernel this afternoon I received the following error message: Building modules, stage 2. MODPOST 1670 modules WARNING: Can't handle masks in drivers/mtd/nand/cafe_nand:FFFF0 I have been building each of the kernels in the 2.6.23-rc series and had not noted this message before. I apologize if this is a non-issue. -
Sep 19, 6:57 pm 2007
Kumar Gala
SMP interrupt controller that only supports CPU affinity?
I was wondering if there were any examples of interrupt controllers on SMP systems that only supported CPU affinity. I'm trying to see the best way to ensure that desc->affinity gets set properly. thanks - k -
Sep 19, 7:01 pm 2007
Nagendra Tomar
[PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered EPO...
The tcp_check_space() function calls tcp_new_space() only if the SOCK_NOSPACE bit is set in the socket flags. This is causing Edge Triggered EPOLLOUT events to be missed for TCP sockets, as the ep_poll_callback() is not called from the wakeup routine. The SOCK_NOSPACE bit indicates the user's intent to perform writes on that socket (set in tcp_sendmsg and tcp_poll). I believe the idea behind the SOCK_NOSPACE check is to optimize away the tcp_new_space call in cases when user is not intere...
Sep 19, 6:37 pm 2007
David Miller
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
From: Nagendra Tomar <tomer_iisc@yahoo.com> I already replied to your patch posting explaining that whatever is not setting SOCK_NOSPACE should be fixed instead. Please address that, thanks. -
Sep 19, 6:44 pm 2007
Davide Libenzi
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
You're not planning of putting the notion of a SOCK_NOSPACE bit inside a completely device-unaware interface like epoll, I hope? - Davide -
Sep 19, 7:11 pm 2007
Nagendra Tomar
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
Definitely not ! The point is that the "tcp write space available" wakeup does not get called if SOCK_NOSPACE bit is not set. This was fine when the wakeup was merely a wakeup (since SOCK_NOSPACE bit indicated that someone really cared abt the wakeup). Now after the introduction of callback'ed wakeups, we might have some work to do inside the callback even if there is nobody interested in the wakeup at that point of time. In this particular case the ep_poll_callback is not getting called...
Sep 19, 7:50 pm 2007
Nagendra Tomar
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
Dave, I agree that setting SOCK_NOSPACE would have been a more elegant fix. Infact I thought a lot about that before deciding on this fix. But the point here is that the SOCK_NOSPACE bit can be set when the sndbuf space is really less (less than sk_stream_min_wspace()) and some user action (sendmsg or poll) indicated his intent to write. In the case mentioned none of these is true. Since user wants to manage his tranmit buffers himself, his definition of less may not match with wh...
Sep 19, 6:55 pm 2007
David Miller
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
From: Nagendra Tomar <tomer_iisc@yahoo.com> I guess this means you also noticed that you are removing the one and only test of this bit too? You can't remove this, it's critical for performance. -
Sep 19, 7:10 pm 2007
Nagendra Tomar
Re: [PATCH 2.6.23-rc6 Resending] NETWORKING : Edge Triggered...
I'm sure you would have seen value in the check that's why the check is there. Now we have two critical points to discuss 1. How can we achieve the ET EPOLLOUT event with the SOCK_NOSPACE check in place ? 2. How much effect will removing the check have (if we cannot find a way to get the ET EPOLLOUT notification w/ the check in place) ? Regding (2), IMHO for a "fast sender" the SOCK_NOSPACE check will almost always pass as the sender will come back to write (or poll) before ...
Sep 19, 7:32 pm 2007
Dmitry Adamushko
Re: [PATCH] sched: fix to use invalid sched_class
I think, the following approach would be a bit more appropriate (the missing addition to the already existing "don't leak PI boosting prio"): (not tested) --- diff --git a/kernel/sched.c b/kernel/sched.c index bc1a625..da2139e 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -1646,6 +1646,8 @@ void sched_fork(struct task_struct *p, int clone_flags) * Make sure we do not leak PI boosting priority to the child: */ p->prio = current->normal_prio; + if (!rt_prio(p->prio)) ...
Sep 19, 6:05 pm 2007
Hiroshi Shimamoto
Re: [PATCH] sched: fix to use invalid sched_class
Thank you for reviewing my patch. Yes, your approach looks better than mine. I've tested it and it looks working fine in my test case. I attached the test case. Will you write a patch to replace mine? Thanks, Hiroshi Shimamoto
Sep 19, 8:01 pm 2007
Branislav Bozgai
Kernel bug
uname -a Linux tweety 2.6.21.3-default #2 Tue Aug 7 17:11:50 EDT 2007 i686 athlon i386 GNU/Linux Hello, my system is crashing with following info in /var/log/messages, thought I send it to you.
Sep 19, 5:43 pm 2007
Erez Zadok
[GIT PULL -mm] 0/6 Unionfs updates/cleanups/fixes
The following is a series of patches related to Unionfs. They represent a few code cleanups (suggested or inspired by comments on the previous set of patches), and a few more bug fixes (esp. to cache coherency). These fixes were tested on our 2.6.23-rc6 latest code, as well as the backports to 2.6.{22,21,20,19,18,9} on ext2/3/4, xfs, reiserfs, nfs, jffs2, ramfs, tmpfs, cramfs, and squashfs (where available). See http://unionfs.filesystems.org/ to download backported unionfs code. Please pull f...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 6/6] Unionfs: cache coherency after lower objects are...
Prevent an oops if a lower file is deleted and then it is stat'ed from the upper layer. Ensure that we return a negative dentry so the user will get an ENOENT. Properly dput/mntput so we don't leak references at the lower file system. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/lookup.c | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/fs/unionfs/lookup.c b/fs/unionfs/lookup.c i...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 5/6] Unionfs: unionfs_lookup locking consistency
Ensure that our lookup locking is consistent and symmetric: if a lock existed before calling lookup_backend, it should remain so; only if performing a lookup of a known new dentry, should lookup_backend return a newly-locked dentry-inode info (and only if there was no error). Document this behavior. This cleanup allowed us to remove two unnecessary int declarations. Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/inode.c...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 4/6] Unionfs: check integrity only if validated dentr...
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/dentry.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/fs/unionfs/dentry.c b/fs/unionfs/dentry.c index 91f9780..9e0742d 100644 --- a/fs/unionfs/dentry.c +++ b/fs/unionfs/dentry.c @@ -418,7 +418,8 @@ static int unionfs_d_revalidate(struct dentry *dentry, struct nameidata *nd) unionfs_lock_dentry(dentry); err = __unionfs_d_revalidate_chain(dent...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 1/6] Unionfs: use bool type in dentry and file revali...
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/commonfops.c | 12 ++++++------ fs/unionfs/dentry.c | 2 +- fs/unionfs/dirfops.c | 4 ++-- fs/unionfs/file.c | 12 ++++++------ fs/unionfs/mmap.c | 6 +++--- fs/unionfs/union.h | 2 +- 6 files changed, 19 insertions(+), 19 deletions(-) diff --git a/fs/unionfs/commonfops.c b/fs/unionfs/commonfops.c index 724128d..87cbb09 100644 --- a/...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 2/6] Unionfs: remove unnecessary comment
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/fanout.h | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/fs/unionfs/fanout.h b/fs/unionfs/fanout.h index c5bf454..afeb9f6 100644 --- a/fs/unionfs/fanout.h +++ b/fs/unionfs/fanout.h @@ -320,7 +320,6 @@ static inline void unionfs_copy_attr_times(struct inode *upper) upper->i_ctime = lower->i_ctime; if (timespec_compare(&upper->i_ati...
Sep 19, 5:24 pm 2007
Erez Zadok
[PATCH 3/6] Unionfs: add missing newlines to printks
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu> Acked-by: Josef Sipek <jsipek@fsl.cs.sunysb.edu> --- fs/unionfs/dentry.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/unionfs/dentry.c b/fs/unionfs/dentry.c index f32922e..91f9780 100644 --- a/fs/unionfs/dentry.c +++ b/fs/unionfs/dentry.c @@ -438,13 +438,13 @@ static void unionfs_d_release(struct dentry *dentry) unionfs_check_dentry(dentry); /* this could be a negative dentry, so check first */ if...
Sep 19, 5:24 pm 2007
Hiroshi Shimamoto
[PATCH] sched: fix to use invalid sched_class
Hi Ingo, I found an issue about the scheduler. If you need a test case, please let me know. Here is a patch. When using rt_mutex, a NULL pointer dereference is occurred at enqueue_task_rt. Here is a scenario; 1) there are two threads, the thread A is fair_sched_class and thread B is rt_sched_class. 2) Thread A is boosted up to rt_sched_class, because the thread A has a rt_mutex lock and the thread B is waiting the lock. 3) At this time, when thread A create a new thread C, the thread ...
Sep 19, 5:14 pm 2007
Ingo Molnar
Re: [PATCH] sched: fix to use invalid sched_class
Nice fix! It's a 2.6.23 must-have fix - i'll push it out into the scheduler tree. Thanks! Ingo -
Sep 19, 5:37 pm 2007
Gonsolo
Complete Linux history in git
I have written a small python script that fetches the linux archive at git://git.kernel.org/pub/scm/linux/kernel/git/nico/archive.git, applies patches up to 2.4.0 and commits every patch to git with a message and a tag. From there it should be easy to merge old-2.6-bkcvs and the latest Linux git and have a git archive with the complete history. To run it you have to download some patches from http://gonsolo.de/kernel_history/ and start the script from the same directory. It is not perfect, yo...
Sep 19, 5:06 pm 2007
Ramon Chimeno
Disk I/O degraded performance
Hi all I migrated one of my server from kernel 2.6.18 to the latest 2.6.22 and I experienced lower disk performance for processes that open file with the O_DIRECT flag. I did a very simple test program that opens two files with O_DIRECT flag and reads the files to end. I monitored the time spent to read the files and I have ~ 40% of difference between 2.6.18 and 2.6.22. For information, the files are stored on a XFS partition which is part of a software raid-5 block device (the raid-5 is made ...
Sep 19, 4:09 pm 2007
Bartlomiej Zolnierki...
[PATCH] MAINTAINERS: mark ide-scsi as Orphan
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> --- MAINTAINERS | 5 +++++ 1 file changed, 5 insertions(+) Index: b/MAINTAINERS =================================================================== --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1889,6 +1889,11 @@ M: Gadi Oxman <gadio@netvision.net.il> L: linux-kernel@vger.kernel.org S: Maintained +IDE-SCSI DRIVER +L: linux-ide@vger.kernel.org +L: linux-scsi@vger.kernel.org +S: Orphan + IEEE 1394 SUBSYSTEM P: ...
Sep 19, 4:08 pm 2007
Junio C Hamano
[ANNOUNCE] GIT 1.5.3.2
The latest maintenance release GIT 1.5.3.2 is available at the usual places: http://www.kernel.org/pub/software/scm/git/ git-1.5.3.2.tar.{gz,bz2} (tarball) git-htmldocs-1.5.3.2.tar.{gz,bz2} (preformatted docs) git-manpages-1.5.3.2.tar.{gz,bz2} (preformatted docs) RPMS/$arch/git-*-1.5.3.2-1.$arch.rpm (RPM) GIT v1.5.3.2 Release Notes ========================== Fixes since v1.5.3.1 -------------------- * git-push sent thin packs by default, which was not good for the p...
Sep 19, 3:01 pm 2007
Agarwal, Lomesh
what is the difference between shutdown command and writing ...
Does linux handles writing "disk" to /sys/power/state and shutdown -P now differently (except writing to disk part)? I have a Xen system and if I try both (in dom0 which is linux) then writing "disk" powers off the system while issuing shutdown command halts the system but the system is still power on. Dom0 is using ramdisk so writing "disk" to /sys/power/state should essentially be same as shutdown command. -
Sep 19, 2:50 pm 2007
Rafael J. Wysocki
Re: what is the difference between shutdown command and writ...
Yes, it does (depending also on what you mean by 'now'). Greetings, Rafael -
Sep 19, 5:34 pm 2007
Agarwal, Lomesh
RE: what is the difference between shutdown command and writ...
Can you tell me the differences? Also what do you mean by - depending also on what you mean by 'now'? I gave now as a time parameter to shutdown command. How can it be interpreted in a different way? -----Original Message----- From: Rafael J. Wysocki [mailto:rjw@sisk.pl] Sent: Wednesday, September 19, 2007 2:35 PM To: Agarwal, Lomesh Cc: linux-kernel@vger.kernel.org Subject: Re: what is the difference between shutdown command and writing to /sys/power/state Yes, it does (depending also on ...
Sep 19, 5:37 pm 2007
Rafael J. Wysocki
Re: what is the difference between shutdown command and writ...
Sorry, I have misunderstood your post (the "now" doesn't look as a part of the command). Greetings, -
Sep 19, 8:09 pm 2007
Frans Pop
2.6.23-rc6: S4 and S5 no longer listed as supported on Toshi...
Hi, When compared with 2.6.22-4, dmesg no longer lists S4 and S5 as supported for my Toshiba Satellite A40 laptop (Mobile Intel Pentium 4, 2.8GHz). -Linux version 2.6.22-2-686 (Debian 2.6.22-4) (waldi@debian.org) ... +Linux version 2.6.23-rc6 (root@faramir) ... [...] +ACPI: EC: Look up EC in DSDT ACPI: Interpreter enabled -ACPI: (supports S0 S3 S4 S5) +ACPI: (supports S0 S3) ACPI: Using IOAPIC for interrupt routing ACPI: PCI Root Bridge [PCI0] (0000:00) I see no other relevant changes...
Sep 19, 2:14 pm 2007
Tim Bird
[Announce] Linux-tiny project revival
Recently, the CE Linux forum has been working to revive the Linux-tiny project. At OLS, I asked for interested parties to volunteer to become the new maintainer for the Linux-tiny patchset. A few candidates came forward, but eventually Michael Opdenacker was selected as the new primary maintainer. A few other people, including John Cooper of Wind River and myself are working to support this effort. Recently, many of the Linux-tiny patches have been brought up-to-date and are now available for ...
Sep 19, 2:03 pm 2007
Andrew Morton
Re: [Celinux-dev] [Announce] Linux-tiny project revival
On Wed, 19 Sep 2007 11:03:09 -0700 I volunteer! Send patches to me, cc linux-kernel and celinuv-dev. Seriously, putting this stuff into some private patch collection should be a complete last resort - you should only do this with patches which you (and the rest of us) agree have no hope of ever getting into mainline. -
Sep 19, 5:28 pm 2007
Tim Bird
Re: [Celinux-dev] [Announce] Linux-tiny project revival
OK, I'll try to accelerate the effort to send these to you. We'll still need some kind of bucket for the patches that don't apply to recent kernels, but which no one has yet had time to bring up-to-date (or evaluate for permanent dismissal). And dribbling them out, fixing them up, responding to issues - all take time that I can't commit to personally for the next week or so. I'll let Michael respond whether he can get to this sooner rather than later, as planned. ============================= ...
Sep 19, 5:41 pm 2007
Michael Opdenacker
Re: [Celinux-dev] [Announce] Linux-tiny project revival
Andrew, you're completely right... The patches should all aim at being included into mainline or die. I'm finishing a sequence of crazy weeks and I will have time to send you patches one by one next week, starting with the easiest ones. Thanks for your support. Cheers, Michael. -- Michael Opdenacker http://free-electrons.com +33 621 604 642 -
Sep 19, 6:38 pm 2007
Andi Kleen
Re: [Announce] Linux-tiny project revival
Not sure what the point is of a separate patchkit. If it's a reasonable patch it should just be put into mainline. And hopefully all the patches will be reasonable. -Andi -
Sep 19, 3:28 pm 2007
Tim Bird
Re: [Announce] Linux-tiny project revival
I don't know the detailed history, but my understanding is that for some of these, mainline attempts were made in the past. The patchkit gives a place for things to live while they are out of mainline, and still have multiple people use and work on them. Optimally the duration of being out-of-mainline would be short, but my experience is that sometimes what an embedded developer considers reasonable to hack off the kernel is not considered so reasonable by other developers (even with config optio...
Sep 19, 3:41 pm 2007
Valdis.Kletnieks
Re: [Announce] Linux-tiny project revival
Is anybody working on testing that the patchkit "does no harm" for bigger boxes (laptops, desktops, servers)? That would probably be helpful info when pieces are pushed towards mainline.... (Was just looking at the patch details, there's at least a few that look interesting for my purposes even though I'm not an embedded developer)...
Sep 19, 4:45 pm 2007
Tim Bird
Re: [Announce] Linux-tiny project revival
Not to my knowledge. Most of the things it provides are only activated by config options. So my sense is that just applying the patches should be harmless. But we'll need some runtime testing to see what affect some of these have on big iron. ============================= Tim Bird Architecture Group Chair, CE Linux Forum Senior Staff Engineer, Sony Corporation of America ============================= -
Sep 19, 5:29 pm 2007
Michael Opdenacker
Re: [Announce] Linux-tiny project revival
Tim is right, Linux-Tiny features are only activated by configuration options. However, that doesn't prevent us from proposing size reduction changes impacting all kernel users, in cases a configuration option doesn't make sense. Extensive testing in the -mm tree will then be required. Cheers, Michael. -- Michael Opdenacker http://free-electrons.com +33 621 604 642 -
Sep 19, 6:29 pm 2007
Christian MICHON
Re: [Announce] Linux-tiny project revival
congratulations to the new maintainer! nice to see this subset of patches being revived. ;-) -- Christian -- http://detaolb.sourceforge.net/, a linux distribution for Qemu with Git inside ! -
Sep 19, 3:01 pm 2007
Luis R. Rodriguez
Re: [Announce] Linux-tiny project revival
Will there be a separate git for testing? Is the idea to still keep moving patches upstream? Luis -
Sep 19, 2:47 pm 2007
Tim Bird
Re: [Announce] Linux-tiny project revival
Right now we're publishing a quilt-able tarball. Instructions for applying this are on the http://elinux.org/Linux_Tiny page. Note that some broken patches are kept around in the patches/tiny directory, but commented out in the series file, in case someone Yes, very much so. These patches have been showing up in CE products, and this is part of an overall effort to dust them off, test them, and move them upstream. -- Tim ============================= Tim Bird Architecture Group Chair,...
Sep 19, 3:31 pm 2007
Jeff Dike
[RESEND] [PATCH 9/11] UML - Eliminate interrupts in the idle...
[ The first version of this patch conflicted with the irqstack fix merged last night - this is the fixed version ] Now, the idle loop now longer needs SIGALRM firing - it can just sleep for the requisite amount of time and fake a timer interrupt when it finishes. Any use of ITIMER_REAL now goes away. disable_timer only turns off ITIMER_VIRTUAL. switch_timers is no longer needed, so it, and all calls, goes away. disable_timer now returns the amount of time remaining on the timer. default_i...
Sep 19, 1:38 pm 2007
Jeff Dike
[RESEND] [PATCH 2/11] UML - Fix timer switching
[ The first version of this patch conflicted with the irqstack fix merged last night - this is the fixed version ] Fix up the switching between virtual and real timers. The idle loop sleeps, so the timer at that point must be real time. At all other times, the timer must be virtual. Even when userspace is running, and the kernel is asleep, the virtual timer is correct because the process timer will be running and the process timer will be firing. The timer switch used to be in the context sw...
Sep 19, 1:38 pm 2007
Jeff Dike
[PATCH 11/11] UML - Use *SEC_PER_*SEC constants
There are various uses of powers of 1000, plus the odd BILLION constant in the time code. However, there are perfectly good definitions of *SEC_PER_*SEC in linux/time.h which can be used instaed. These are replaced directly in kernel code. Userspace code imports those constants as UM_*SEC_PER_*SEC and uses these. Signed-off-by: Jeff Dike <jdike@linux.intel.com> --- arch/um/include/common-offsets.h | 4 ++++ arch/um/include/os.h | 2 -- arch/um/kernel/time.c ...
Sep 19, 1:02 pm 2007
Jeff Dike
[PATCH 10/11] UML - Eliminate SIGALRM
Now that ITIMER_REAL is no longer used, there is no need for any use of SIGALRM whatsoever. This patch removes all mention of it. In addition, real_alarm_handler took a signal argument which is now always SIGVTALRM. So, that is gone. Signed-off-by: Jeff Dike <jdike@linux.intel.com> --- arch/um/os-Linux/irq.c | 2 +- arch/um/os-Linux/main.c | 2 +- arch/um/os-Linux/process.c | 10 +++++----- arch/um/os-Linux/signal.c | 28 +++++++--------------------...
Sep 19, 1:02 pm 2007
previous daytodaynext day
September 18, 2007September 19, 2007September 20, 2007