Page was fully updated, corrected, polished.
[ikiwiki.git] / docs / developer / Code_Bounties.mdwn
CommitLineData
3ebcd5f1 1[[!toc ]]
2
3ebcd5f1 3# Explanation
4
5A code bounty is a certain financial stimulant to encourage someone to put his or her effort into a project. A code bounty in the DragonFlyBSD project needs to adhere to a set of rules defined hereunder, though these are only preliminary and subject to change. One could for example imagine developers accepting sponsorship on a wholly different basis, or non-financial rewards for completing a bounty project, like free hardware (we love that!).
6
3ebcd5f1 7# Rules
8
3ebcd5f1 9* Bounty Projects are open to anyone that has a reasonable capability of completing the project. Typically it's on first to ask basis, but the sponsor of the bounty may choose differently.
10
3ebcd5f1 11* If the developer can not complete the project by the given time period, the bounty agreement is void and no money will be issued for work done. DragonFly developers may extend the time period if it's reasonable and prudent to do so. Upon voiding the agreement, someone may reissue the project again to another developer.
12
3ebcd5f1 13* Payment for a project shall be issued in no less then 72 hours after the DragonFly developers has had ten business days to determine if the code is stable and usefulness, no major issues are left unresolved and able for being merged into the project. Payment shall be in either [[Paypal]] (preferred), some money sending company or a bank account transfer.
14
3ebcd5f1 15* Upon recieving payment, the project developer shall issue (within 24 hours) a message in the WIKI and to DragonFly development ML that they have recieved payment.
16
3ebcd5f1 17* All code submitted shall be of the same license as DragonFly. Any questions on the licensing issues should directed to the DragonFly Team.
18
3ebcd5f1 19# List of bounties
3ebcd5f1 20## UTF-8 support in Console
3ebcd5f1 21### Description
3ebcd5f1 22Adding full UTF-8 support in console.
23
3ebcd5f1 24### Technical details
62309341 25Not yet written.
3ebcd5f1 26
62309341 27### Main goals
3ebcd5f1 28Not yet written.
29
62309341
R
30### Estimated time
31Still unknown.
3ebcd5f1 32
62309341
R
33### Donators
34*** **timofonic** ***: 35 eur.
40f9f044 35
36*** **Dillon** ***: 50 usd.
d575682b 37***
40f9f044 38 TOTAL AMOUNT 35 eur + 50 usd.
3ebcd5f1 39
62309341
R
40<br />
41## Update our interrupt routing and PCI code
42### Description
43(shamelessly copied from gsoc2010 projects page)
3ebcd5f1 44
62309341 45* Update our interrupt routing to ACPI interrupt routing instead of relying on the mptable exclusively
75837940 46* Update the PCI code to take advantage of MSI (Message Signalled Interrupts)
47 (PCI code *can* do MSI. It was synced w/FreeBSD 7.2 last year, just grep for MSI in bus/pci)
3ebcd5f1 48
62309341
R
49### Technical details
50Not yet written.
3ebcd5f1 51
62309341
R
52### Main goals
53Not yet written.
3ebcd5f1 54
55### Estimated time
62309341 56Unknown.
3ebcd5f1 57
62309341
R
58### Donators
59*** **Rumko** ***: 150 eur.
40f9f044 60
61*** **Dillon** ***: 100 usd.
d575682b 62***
40f9f044 63 TOTAL AMOUNT 150 eur + 100 usd.
3ebcd5f1 64
62309341
R
65<br />
66## Port valgrind to DragonFlyBSD
67### Description
68(shamelessly copied from gsoc2010 projects page)
3ebcd5f1 69
62309341 70Valgrind is a very useful tool on a system like DragonFly that's under heavy development. Ideally, we would want the port to be usable with vkernel processes, thus enabling complex checking of the core kernel code.
3ebcd5f1 71
62309341
R
72### Technical details
73Not yet written.
3ebcd5f1 74
62309341
R
75### Main goals
76(shamelessly copied from gsoc2010 projects page)
3ebcd5f1 77
c0e7dd2a 78The goal of this project is to port valgrind (3.5.0+) to the DragonFlyBSD platform so that at least the memcheck tool runs sufficiently well to be useful. Also an update for the pkgsrc package (devel/valgrind) should be made.
3ebcd5f1 79
62309341
R
80### Estimated time
81Unknown.
3ebcd5f1 82
62309341
R
83### Donators
84*** **Rumko** ***: 100 eur.
11c9dd74 85
1f448e65 86*** **tuxillo** ***: 50 eur.
40f9f044 87
88*** **Dillon** ***: 100 usd.
d575682b 89***
40f9f044 90 TOTAL AMOUNT 150 eur + 100 usd.
3ebcd5f1 91
62309341
R
92<br />
93## HAMMER compression
94### Description
95(shamelessly copied from gsoc2010 projects page)
96
97* Compress blocks as they get written to disk.
98* Only file data (rec_type == DATA) should be compressed, not meta-data.
99* the CRC should be that of the uncompressed data.
100* ideally you'd need to associate the uncompressed data with the buffer cache buffer somehow, so that decompression is only performed once.
101* compression could be turned on a per-file or per-pfs basis.
102* gzip compression would be just fine at first.
103
104### Technical details
105(shamelessly copied from gsoc2010 projects page)
3ebcd5f1 106
62309341 107Doing compression would require flagging the data record as being compressed and also require double-buffering since the buffer cache buffer associated with the uncompressed data might have holes in it and otherwise referenced by user programs and cannot serve as a buffer for in-place compression or decompression.
3ebcd5f1 108
62309341 109The direct read / direct write mechanic would almost certainly have to be disabled for compressed buffers and the small-data zone would probably have to be used (the large-data zone is designed only for use with 16K or 64K buffers).
3ebcd5f1 110
62309341
R
111### Main goals
112Not yet written.
113
114### Estimated time
115Unknown.
116
117### Donators
118*** **Rumko** ***: 50 eur.
40f9f044 119
120*** **Dillon** ***: 100 usd.
d575682b 121***
40f9f044 122 TOTAL AMOUNT 50 eur + 100 usd.