[PATCH xserver] FlushAllOutput: Only call FlushCallbacks when actually flushing data

Adam Jackson ajax at nwnk.net
Mon Jul 18 20:31:46 UTC 2016


On Tue, 2016-07-12 at 09:49 -0700, Keith Packard wrote:
> Adam Jackson <ajax at nwnk.net> writes:
> 
> > Here's an epoll branch rebased to master, with poll emulation for
> > Windows, and a pair of proof-of-concept patches at the end to allow
> > (force) testing on pollful systems:
> 
> So you're just emulating poll with select, which should work on
> Windows. that seems like a good starting place; I'd encourage the
> Windows hackers to refine that to handle arbitrary numbers of FDs.
> 
> > I tested this with 32 parallel x11perf -noop's on Linux, and while it
> > does work, reliable numbers are a bit hard to come by. The x11perf
> > processes take (wildly) varying amounts of time to complete, such that
> > the last few runs to complete show inflated nop dispatch rates because
> > they're competing with fewer clients. I don't know yet how much of that
> > is X's scheduler and how much is the kernel's. 
> 
> I've been running many instances of 'plaid' in parallel as that doesn't
> scale it's work based on the server performance.
> 
> Thanks for taking a stab at this; it looks good to me. I'd love for
> someone to give it a spin on Windows and make sure it actually works.

I've merged everything up to (but not including) the poll emulation
code:

remote: I: patch #59987 updated using rev 05a793f5b3c40747d5a92a076def7f4fb673c7e7.
remote: I: patch #89027 updated using rev 81135991a583b3b30a90e82ddc1d5c86d57bf00b.
remote: E: failed to find patch for rev aa6717ce213e79735c72afc5ec9cc1f9c0297e09.
remote: I: patch #89021 updated using rev 559aac2d71250e3137aaa582e2a59a918ddf21b7.
remote: E: failed to find patch for rev c3fea428aed919826130ef8ebdb2cceb445a845b.
remote: E: failed to find patch for rev 24e65bf0db57bf4ac70386c0a0e8275b73edd2fb.
remote: I: patch #87950 updated using rev 55c2e1a3aa587c58a74066724e11e30b3df267b8.
remote: I: patch #87953 updated using rev 6bf7b49f6711c7ed1837283dc04f93f4c1b77ecc.
remote: I: patch #87948 updated using rev 6299ef3d749d6f978d3d38d42f711ac56bf382eb.
remote: E: failed to find patch for rev 410bc047480a9f98df678dc850bc6b99c3cfb5bf.
remote: E: failed to find patch for rev fb0802113b4c57819cba15d64baf79bf4148607e.
remote: E: failed to find patch for rev 9d15912aa475b733bbb20efc367a67dacad63bf1.
remote: I: patch #89584 updated using rev be5a513fee6cbf29ef7570e57eb0436d70fbd88c.
remote: E: failed to find patch for rev 4af00242ef1e39499b932d12423fdf449296090a.
remote: I: patch #89581 updated using rev 7762a602c1dfdd8cfcf2b8c2281cf4d683d05216.
remote: I: patch #89592 updated using rev a414db021575accff64abad6f1047245e81c7476.
remote: I: patch #89593 updated using rev e6636b438322a9a2f2270ad9d60bf3dfc72be0b3.
remote: E: failed to find patch for rev 0d294462a5af08ada654c588fad921ed7a22749b.
remote: E: failed to find patch for rev ef7ddbe242ed4c461f816663fb88646e41f1c21b.
remote: E: failed to find patch for rev 8d3a368d8980e37e7e8c57065dc901ce809887c6.
remote: I: 10 patch(es) updated to state Accepted.
To ssh://git.freedesktop.org/git/xorg/xserver
   950ffb8..8d3a368  master -> master

My epoll branch has been rebased atop that as well.

- ajax


More information about the xorg-devel mailing list