Feature #7304
closedAllow users to reject verification objects of large sizes
0%
Description
We already realized that large modules are hard to prepare for verification and to verify. In particular they usually require very much resources for all non-trivial cases. Sometimes it even can prevent other modules from checking, e.g. due to hang ups and resource exhausting.
Instead of investigating some implicit ways to reject such the modules, we decided to supply a new straightforward option that will allow to reject corresponding verification objects early if their LOCs exceed the specified maximum one. Then we will have more chances to verify all modules even after some changes in tools/specifications.
To have a way to experiment with these large modules nevertheless it has sense to support the supplementary option that reject verification objects that occupies less LOCs that the minimum one.
Updated by Evgeny Novikov over 8 years ago
- drivers/gpu/drm/radeon/radeon.ko (148557)
- fs/btrfs/btrfs.ko (99032)
- drivers/gpu/drm/nouveau/nouveau.ko (89102)
- fs/xfs/xfs.ko (88552)
- drivers/scsi/lpfc/lpfc.ko (71479)
- drivers/gpu/drm/i915/i915.ko (69131)
- drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko (67306)
- drivers/staging/rtl8188eu/r8188eu.ko (67262)
- fs/ocfs2/ocfs2.ko (56715)
- drivers/scsi/qla2xxx/qla2xxx.ko (53188)
- drivers/net/ethernet/broadcom/bnx2x/bnx2x.ko (52419)
- drivers/staging/rtl8821ae/rtl8821ae.ko (47027)
- drivers/scsi/bfa/bfa.ko (45485)
- drivers/infiniband/hw/qib/ib_qib.ko (44819)
- net/mac80211/mac80211.ko (44534)
- drivers/net/wireless/b43/b43.ko (44386)
- drivers/staging/lustre/lustre/ptlrpc/ptlrpc.ko (42765)
- fs/ext4/ext4.ko (40943)
- fs/cifs/cifs.ko (40610)
- drivers/isdn/hisax/hisax.ko (36218)
- net/ipv6/ipv6.ko (35632)
- drivers/staging/vt6655/vt6655_stage.ko (35295)
- net/sctp/sctp.ko (35122)
- fs/ubifs/ubifs.ko (32011)
- net/bluetooth/bluetooth.ko (30584)
For some of them it is already known that EMG needs more than 300 MB (sometimes much more, e.g. more than 4 GB for nouveau.ko). Weaver needs ~500 MB for radeon.ko even without any real instrumentation. These issues should be addressed in other feature requests and definitely they should not affect all other ~99.4% of modules.
Updated by Alexey Polushkin over 8 years ago
- Status changed from New to Resolved
Resolved in branch 'modules_reject_by_loc'.
Parameter 'maximum verification object size' is located at the root of the JSON config file. Also, the parameter was added to presets.
Updated by Evgeny Novikov over 8 years ago
- Status changed from Resolved to Closed
- Published in build set to 2174e29
I merged the branch to master in 2174e29. Everybody needs to update their jobs to specify the maximum verification object size.
Updated by Alexey Khoroshilov over 8 years ago
- Status changed from Closed to Resolved
Evgeny Novikov wrote:
Everybody needs to update their jobs to specify the maximum verification object size.
Do you mean "everybody needs to update job to take benefits from the parameter" or that it became mandatory?
Updated by Evgeny Novikov over 8 years ago
Alexey Khoroshilov wrote:
Evgeny Novikov wrote:
Everybody needs to update their jobs to specify the maximum verification object size.
Do you mean "everybody needs to update job to take benefits from the parameter" or that it became mandatory?
In all new preset jobs it is specified by default. So after update one will use it by default.
To experiment with large modules it is required to change jobs respectively. For instance, one should be able to reject all small modules. Unfortunately it turned out that the corresponding option wasn't implemented still although it was mentioned originally in the description.
Updated by Alexey Polushkin over 8 years ago
Improved in the 'reject_by_loc_minimum' branch.
Updated by Evgeny Novikov over 8 years ago
- Status changed from Resolved to Closed
- Published in build changed from 2174e29 to 753dd6b
I merged the branch into master in 753dd6b. The supplementary parameter is minimum verification object size. The default parameter rejecting large modules is specified in all preset jobs.